package com.huawei;

import java.util.*;

/**
 * Created by Z-hong on 2024/7/9.
 */

public class HJ26 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        String next = sc.nextLine();
        char []arr=next.toCharArray();
        //把非大小写字母存起来；
        Map<Integer,Character> map=new HashMap<>();

        for (int i = 0; i < arr.length; i++) {
            if(!Character.isLetter(arr[i])){
                map.put(i,arr[i]);
            }
        }

        // 排序字母字符
        List<Character> letterList = new ArrayList<>();
        for (char c : arr) {
            if (Character.isLetter(c)) {
                letterList.add(c);
            }
        }
        Collections.sort(letterList, (a, b) -> Character.toLowerCase(a) - Character.toLowerCase(b));

        // 将排序后的字母字符放回到结果数组中
        int index = 0;
        char[] res = new char[arr.length];
        for (int i = 0; i < arr.length; i++) {
            if (map.containsKey(i)) {
                res[i] = map.get(i);
            } else {
                res[i] = letterList.get(index++);
            }
        }

        System.out.println(String.valueOf(res));

    }


}
